package se.stabby.undersokning.webapp;

import com.google.common.base.Preconditions;

import java.util.List;

/**
 * User: per.segersten
 * Date: 2014-06-30
 */
public class Undersokning {

    private String id;
    private String namn;
    private String beskrivning;
    private List<Fraga> fragor;

    public Undersokning() {
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getNamn() {
        return namn;
    }

    public void setNamn(String namn) {
        this.namn = namn;
    }

    public String getBeskrivning() {
        return beskrivning;
    }

    public void setBeskrivning(String beskrivning) {
        this.beskrivning = beskrivning;
    }

    public List<Fraga> getFragor() {
        return fragor;
    }

    public void setFragor(List<Fraga> fragor) {
        this.fragor = fragor;
    }

    static class Builder {

        private Undersokning undersokning = new Undersokning();

        public Builder setId(long id) {
            undersokning.id = Long.toString(id);
            return this;
        }

        public Builder setNamn(String namn) {
            undersokning.namn = namn;
            return this;
        }

        public Builder setBeskrivning(String beskrivning) {
            undersokning.beskrivning = beskrivning;
            return this;
        }

        public Builder setFragor(List<Fraga> fragor) {
            undersokning.fragor = fragor;
            return this;
        }

        public Undersokning build() {
            Preconditions.checkNotNull(undersokning.id);
            Preconditions.checkNotNull(undersokning.namn);
            Preconditions.checkNotNull(undersokning.beskrivning);
            Preconditions.checkNotNull(undersokning.fragor);

            return undersokning;
        }
    }

}

